import {BaseDataObject} from "../dataModel/baseDataObject.js";

export class BaseManage {

    _todos = null

    constructor(pubsub) {

        this.pubsub = pubsub
        this.todos = [];
    }

    get todos() {
        return this._todos
    }

    set todos(value) {
        this._todos = value
    }

    //========================== 接口方法 ==========================

    getTodo() {
        return this.todos;
    }

    addTodo(value) {
        console.log(value, 222)
        this.todos.push({
            id: value.id,
            name: value.name,
        })
        this.pubsub.pubsub('test', this.todos)
    }

    deleteTodo(id) {
        if (this.findById(id)) {
            this.todos = this.todos.filter((todo) => {
                return todo.id !== id
            })
            this.pubsub.pubsub('test', this.todos);
        }
    }

    findById(id) {
        return this.todos.find((todo) => {
            return todo.id === id
        })
    }
}